package com.dly.blog.service;

import com.dly.blog.domain.Role;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dly.blog.domain.ro.menu.UpdateRoleMenuRO;
import com.dly.blog.domain.ro.permission.UpdateRolePermissionRO;
import com.dly.blog.domain.ro.role.HomePageRO;
import com.dly.blog.domain.vo.role.RoleVO;
import com.dly.blog.domain.ro.role.RolePageRO;
import com.dly.blog.domain.ro.role.RoleAddRO;
import com.dly.blog.domain.ro.role.RoleEditRO;
import com.dly.blog.domain.vo.PageVO;

import java.util.List;

/**
 * <p>
 * 角色 服务类
 * </p>
 *
 * @author DLY
 * @since 2024-11-11 10:59:37
 */
public interface RoleService extends IService<Role> {

    PageVO<RoleVO> getRolePage(RolePageRO rolePageRO);

    void addRole(RoleAddRO roleAddRO);

    RoleVO getRole(String id);

    void removeRole(String[] ids);

    void editRole(RoleEditRO roleEditRO);

    List<RoleVO> getRoleAll();

    List<String> getRoleMenu(String roleId);

    void updateRoleMenu(UpdateRoleMenuRO updateRoleMenuRO);

    List<String> getRolePermission(String roleId);

    void updateRolePermission(UpdateRolePermissionRO updateRolePermissionRO);

    String getHomePage(String roleId);

    void setHomePage(HomePageRO homePageRO);
}
